<?php
namespace web\admin\controller;

class Category extends Common{
	protected $db;
	public function __construct(){
		parent::__construct();//为了不覆盖父级构造方法
		//实例化分类模型
		$this->db = new \system\model\Category();
	}
    //动作
	public function index(){
		//此处书写代码...
		//获取数据库所有数据
		$data = $this->db->getAll();
		//p($data);die;
		View::with('data',$data)->make();
	}

	/**
	 * 添加顶级分类
	 */
	public function store(){
		if(IS_POST){
			if($this->db->store()){
				message('顶级分类添加成功',u('index'),'success');
			}
			message($this->db->getError(),'back','error');
		}
		View::make();
	}
	/**
	 * 添加子类
	 */
	public function addSonCate(){
		$cid = q('get.cid',0,'intval');
		if(IS_POST){
			if($this->db->store()){
				message('子集分类添加成功',u('index'),'success');
			}
			message($this->db->getError(),'back','error');
		}
		//获取父级数据
		//field 指定查询结果字段   查询指定列数据
		$fatherData = $this->db->where('cid',$cid)->field(['cid','cname'])->first();

		View::with('fatherData',$fatherData)->make();
	}
	/**
	 * 编辑分类
	 */
	public function edit(){
		$cid = q('get.cid',0,'intval');
		if(IS_POST){
			if($this->db->edit()){
				message('操作成功',u('index'),'success');
			}
			message($this->db->getError(),'back','error');
		}
		//获取旧数据
		$oldData = $this->db->getOldData($cid);
		//p($oldData);
		//处理所属分类
		$cateData = $this->db->getCateData($cid);

		View::with('oldData',$oldData)->with('cateData',$cateData)->make();
	}

	/**
 	* 删除分类
 	*/
    public function del(){
    	// 检测是否进入该方法
    	// echo 2;die ;
    	// 获取当前的要编辑的该条的cid
    	$cid=Q('get.cid',0,'intval');
    	// 调用模型里的删除方法
    	$res=$this->db->del($cid);
    	// 判断是否为真就删除
    	if($res)  message('删除成功',U('index'),'success');
    	// 否就返回错误
    	message($this->db->getError(),'back','error');
    }
}
